package com.starhub.application.rag.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.starhub.application.rag.dto.SegmentDto;
import com.starhub.application.rag.entity.Segment;

/**
 * 分段服务接口
 * @version: V1.0
 * @author: liuhf
 * @time 2025-06-05
 */
public interface SegmentService extends IService<Segment> {

    /**
     * 分段
     * @param segmentDto
     * @return
     */
    Long create(SegmentDto segmentDto);

    void batchCreate(List<SegmentDto> Segments);

    void deleteByItemId(Long itemId);

    void deleteByCollectionId(Long collectionId);

    void deleteByBaseId(Long baseId);

    List<Segment> listByIds(List<String> ids);

    /**
     * 批量更新段落元数据
     * @param segmentDtos 需要更新的段落DTO列表
     */
    void batchUpdate(List<SegmentDto> segmentDtos);
}
